1. Field of the Invention
The present invention relates generally to software applications such as spreadsheets, and more particularly to a system and method of displaying a current value for the contents of a cell of a document, when the portion of the document containing the cell is not currently visible.
2. Description of Background Art
In many software applications, on-screen "windows" are employed to display documents or files. It is well known in the art to provide scrollable windows which are capable of displaying selected portions of such documents or files in response to user specification of scroll commands and resize commands. The user may click on on-screen buttons, or may use keyboard commands, to specify resizing and scrolling operations in various directions and thereby navigate within a document. In this manner, documents containing large amounts of information exceeding the display area of the screen may easily be viewed and edited.
Though such on-screen windows are very useful in facilitating visually intuitive navigation within a document, there are limitations inherent in such a scheme. In particular, the displayed portion of a document, specified by the size and position of the window in a larger "virtual" space comprising the entire document, is generally limited to a single contiguous rectangular region. Thus, for example, in a spreadsheet application containing a plurality of cells, the user may specify a size and position of an on-screen window and thereby obtain a view of a particular contiguous rectangular region within a spreadsheet document. However, conventional systems do not permit simultaneous display of a cell that does not belong to the contiguous region so specified.
In many applications, such display of a cell or cells that do not belong to the contiguous region currently being displayed would be very useful. In spreadsheet applications, for example, formulas may be entered in cells, so that a displayed result in a particular cell comprises a value that is dependent upon values entered in other cells. Thus, a user may wish to edit a value in one cell while observing the results of such editing operations on a second cell. When the second cell is located in close proximity to the first cell, it may be possible to view both cells within the same on-screen window. However, when the second cell is not located in close proximity to the first cell, the user cannot normally view both cells simultaneously. Thus, in order to view the results of the edit operation on the first cell, the user must manually scroll to the second cell, bringing it into view. In tasks involving multiple such edits, this manual scrolling operation is laborious and timeconsuming.
Of course, the user may simply enlarge the on-screen window so that it includes the cell being edited as well as the cell being viewed. However, such enlargement is typically limited by the size of the display screen. Large display screens are available, but they may be expensive and impractical, and may still be insufficiently large to display widely-separated cells in a document. Many spreadsheet applications have usable areas (such as 255 columns by 8,192 rows) far exceeding the display space of conventional screens.
Another solution is that the user may open a second window to display a second contiguous region of the document. Many software applications permit the use of multiple, independently scrollable windows for viewing the same document. However, since each such window typically includes its own title bar, scroll bars, and the like, considerable screen space is consumed by opening multiple windows. In addition, the windows may overlap, making operation and navigation difficult and confusing.
Some applications are capable of displaying a window in a split-pane format, wherein two noncontiguous areas of the document may be displayed in the same window. Each pane within the split-pane window can be independently scrollable along one or both axes. Such a technique may be useful for viewing two or more portions of the same document. However, as with the independently scrollable windows described above, considerable screen space may be consumed by the title bars and other overhead associated with the split-pane format. In addition, the split-pane format generally requires display of the entire displayable portion of a particular row or column, and therefore is not well suited to displaying a single cell in one of the panes, while simultaneously displaying a separate region of the document containing multiple rows and columns.
What is required, then, is a system and method of displaying contents of a cell that does not belong to the group of cells currently displayed in an on-screen window, without unduly reducing available screen space.
What is further required is a system and method of accepting user commands specifying which cell contents to display, in a manner that is user-friendly and does not require extensive user manipulation of on-screen controls and/or commands such as scrolling and resizing windows.